/**
 * 
 */
package edu.tsinghua.mrpvc.device;

/**
 * @author Tangjian Deng & Wei Feng
 *
 */
public interface LightDevice extends BasicDevice {
	public int powerOn();
	public int powerOff();
	public int getState();
	public int downLevel();
	public int upLevel ();
	public int setLevel(int level);
	
	public static final String EVENT_TOPIC_STATE 		= "863pvc/Device/LightCtrl/State";
	public static final String EVENT_TOPIC_ISVALID 		= "863pvc/Device/LightCtrl/Ctrl/IsValid";
	public static final String EVENT_TOPIC_POWER 		= "863pvc/Device/LightCtrl/Ctrl/Power";
	public static final String EVENT_TOPIC_LEVEL 		= "863pvc/Device/LightCtrl/Ctrl/LightLevel";
	
	public static final String EVENT_PROPER_POWER 		= "Power";
	public static final String EVENT_PROPER_LIGHT_LEVEL = "LightLevel";
	public static final String EVENT_PROPER_ID 			= "ID";
	public static final String EVENT_PROPER_ISVALID 	= "IsValid"; 
	
	public interface Constants{
		
		//modified by fw on 11-28
		//modify int type to string type
		public static final String POWER_OFF 				= "0";
		public static final String POWER_ON 				= "1";
		
		public static final String LIGHT_LEVEL_ZERO			= "0";
		public static final String LIGHT_LEVEL_ONE			= "1";
		public static final String LIGHT_LEVEL_TWO			= "2";
		public static final String LIGHT_LEVEL_THREE		= "3";
		public static final String LIGHT_LEVEL_FOUR			= "4";
		
		public static final String ISVALID_TRUE				= "true";
		public static final String ISVALID_FALSE			= "false";
	};
}
